// import 'package:flutter/material.dart';
// import 'package:lib_wallet_connect/lib_wallet_%20connect.dart';
//
// import '../../../module_common/provider/nav_key.dart';
// import '../../module_browser/widget/connect_account.dart';
//
// class WalletConnectUtil extends Web3WalletService {
//   static late Web3Wallet instance;
//
//   @override
//   Web3Wallet create() {
//     // TODO: implement create
//     instance = super.create();
//     return instance;
//   }
//
//   // 连接钱包
//   @override
//   void onSessionProposal(SessionProposalEvent? args) {
//     print('这是继承的验证');
//     if (args != null) {
//       showModalBottomSheet(
//           context: NavKey.getContext(),
//           backgroundColor: Colors.transparent,
//           isScrollControlled: true,
//           builder: (_) {
//             return ConnectAccount(
//               title: 'Connect Account',
//               //  0x8e325b68e7af42f3c21dbc4611cbe9268c0d328c
//               address: '0xE2BE444EF66780A7D5b5A81604229935B99823FA',
//               walletName: 'wallet',
//               onConfrim: (value) {
//                 print('value == ${value}');
//                 Navigator.of(NavKey.getContext()).pop(true);
//               },
//             );
//           }).then((value) {
//         print('value11===${value}');
//         // 确定
//         if (value) {
//           final approvedNS = generateNamespaces(
//             args.params.generatedNamespaces!,
//             ChainType.eip155,
//             account:  "0xE2BE444EF66780A7D5b5A81604229935B99823FA"
//           );
//           instance.approveSession(
//             id: args.id,
//             namespaces: approvedNS,
//           );
//         } else {
//           instance.rejectSession(
//             id: args.id,
//             reason: Errors.getSdkError(Errors.USER_REJECTED),
//           );
//           instance.core.pairing.disconnect(
//             topic: args.params.pairingTopic,
//           );
//         }
//       });
//     }
//
//     // if (args != null) {
//     //   // generatedNamespaces is constructed based on registered methods handlers
//     //   // so if you want to handle requests using onSessionRequest event then you would need to manually add that method in the approved namespaces
//     //   final approvedNS = _generateNamespaces(
//     //     args.params.generatedNamespaces!,
//     //     ChainType.eip155,
//     //   );
//     //   final proposalData = args.params.copyWith(
//     //     generatedNamespaces: approvedNS,
//     //   );
//     //
//     //   final approved = false;
//     //   // 连接钱包弹窗
//     //   if (approved == true) {
//     //     instance.approveSession(
//     //       id: args.id,
//     //       namespaces: approvedNS,
//     //     );
//     //     // final scheme = args.params.proposer.metadata.redirect?.native ?? '';
//     //     // DeepLinkHandler.goTo(scheme, delay: 300);
//     //   } else {
//     //     instance.rejectSession(
//     //       id: args.id,
//     //       reason: Errors.getSdkError(Errors.USER_REJECTED),
//     //     );
//     //     instance.core.pairing.disconnect(
//     //       topic: args.params.pairingTopic,
//     //     );
//     //   }
//     // }
//   }
//
//   //
//   @override
//   void onSessionRequest(SessionRequestEvent? args) {
//     // TODO: implement onSessionRequest
//     super.onSessionRequest(args);
//   }
//
//   // 签名
//   @override
//   Future<void> personalSign(String topic, parameters) {
//     // TODO: implement personalSign
//     return super.personalSign(topic, parameters);
//   }
//
//   // eth sign
//   @override
//   Future<void> ethSign(String topic, parameters) {
//     // TODO: implement ethSign
//     return super.ethSign(topic, parameters);
//   }
//
//   // ethSignTypedData
//   @override
//   Future<void> ethSignTypedData(String topic, parameters) {
//     // TODO: implement ethSignTypedData
//     return super.ethSignTypedData(topic, parameters);
//   }
//
//   // ethSignTypedDataV4
//   @override
//   Future<void> ethSignTypedDataV4(String topic, parameters) {
//     // TODO: implement ethSignTypedDataV4
//     return super.ethSignTypedDataV4(topic, parameters);
//   }
//
//   // ethSignTransaction
//   @override
//   Future<void> ethSignTransaction(String topic, parameters) {
//     // TODO: implement ethSignTransaction
//     return super.ethSignTransaction(topic, parameters);
//   }
//
//   // ethSendTransaction
//   @override
//   Future<void> ethSendTransaction(String topic, parameters) {
//     // TODO: implement ethSendTransaction
//     return super.ethSendTransaction(topic, parameters);
//   }
//
//   // switchChain
//   @override
//   Future<void> switchChain(String topic, parameters) {
//     // TODO: implement switchChain
//     return super.switchChain(topic, parameters);
//   }
//
//   // addChain
//   @override
//   Future<void> addChain(String topic, parameters) {
//     // TODO: implement addChain
//     return super.addChain(topic, parameters);
//   }
//
//
// }
